package com.firewolf.oa.base;

import java.util.List;

/**
 * 基础服务接口
 * @author liuxing
 *
 * @param <T>
 */
public interface BaseService<T> {
	
	/***
	 * 查询所有实体
	 * @return
	 */
	public List<T> findAll() throws Exception;
	
	/**
	 * 根据ID查询单个实体
	 * @param id
	 * @return
	 */
	public T findById(Long id) throws Exception;
	
	/**
	 * 保存实体类
	 * @param t
	 */
	public void save(T t) throws Exception;
	
	/**
	 * 修改实体类
	 * @param t
	 */
	public void update(T t) throws Exception;
	
	/**
	 * 根据ID删除实体类
	 * @param id
	 * @throws Exception
	 */
	public void delete(Long id) throws Exception;
	
	/**
	 * 根据一组ID查找列表
	 * @param ids
	 * @return
	 * @throws Exception
	 */
	public List<T> getByIds(Long[] ids) throws Exception;
	
	
}
